using BuildingBlocks.Abstractions.EventBase;

namespace BuildingBlocks.Infrastructure.EventBus;

public interface IEventBus
{
    Task  PublishAsync(IntegrationEvent @event);
    void Subscribe<T, TH>()
        where T : IntegrationEvent
        where TH : IIntegrationEventHandler<T>;
}